home *** CD-ROM | disk | FTP | other *** search
- unit Adv;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, ExtCtrls, NCTAUDIOEDITOR2Lib_TLB, ComCtrls;
-
- type
- TfrmAdv = class(TForm)
- btnClose: TButton;
- Label2: TLabel;
- Image2: TImage;
- gbOther: TGroupBox;
- Label1: TLabel;
- procedure FormShow(Sender: TObject);
- procedure FormCreate(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- m_Rec: Boolean;
- Dev: IAudioEditor2Device;
- procedure AdvClick(Sender: TObject);
- procedure AdvChange(Sender: TObject);
- end;
-
- var
- frmAdv: TfrmAdv;
-
- implementation
-
- uses Devices;
-
- {$R *.dfm}
-
- //---------------------------------------------------------------------------
-
- procedure TfrmAdv.AdvClick(Sender: TObject);
- var
- ch: TCheckBox;
- sVar: VARIANT;
- begin
- ch := TCheckBox(Sender);
-
- if (ch.Checked=True) then
- sVar.boolVal:=True
- else
- sVar.boolVal:=False;
-
- Dev.DeviceLines.set_AdvancedValue(ch.Tag,sVar);
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmAdv.AdvChange(Sender: TObject);
- var
- tb: TTrackBar;
- sVar: VARIANT;
- begin
- tb := TTrackBar(Sender);
- sVar.lVal:=tb.Position;
- Dev.DeviceLines.set_AdvancedValue(tb.Tag,sVar);
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmAdv.FormShow(Sender: TObject);
- var
- n: Integer;
- i: Integer;
- a: Variant;
- cap: AnsiString;
- ch: TCheckBox;
- tb: TTrackBar;
- l: TLabel;
- begin
- Caption := 'Advanced Properties for ' + Dev.DeviceLines.Name; //sets the title of the form as 'Advanced Properties for ' + 'output source name'
- n :=Dev.DeviceLines.AdvancedCount;
- for i := 0 to n do begin
- a := Dev.DeviceLines.get_AdvancedValue(i);
- cap := IntToStr(i+1)+' '+Dev.DeviceLines.get_AdvancedName(i);
- if (VarType(a) = varBoolean) then begin
- ch := TCheckBox.Create(gbOther);
- ch.Parent := gbOther;
- ch.Left := 16;
- ch.Width := 220;
- ch.Height := 17;
- ch.Top := 80 + i * 23;
- ch.Caption := cap;
- ch.Tag := i;
- ch.Checked := a;
- ch.Name := 'ch' + IntToStr(i);
- ch.OnClick := AdvClick;
- end else begin
- tb := TTrackBar.Create(gbOther);
- tb.Parent := gbOther;
- tb.Left := 16;
- tb.Width := 109;
- tb.Height := 17;
- tb.Top := 80 + i * 23;
- tb.Tag := i;
- tb.ThumbLength := 10;
- tb.Max := 65535;
- tb.Frequency := 5000;
- tb.Position := a;
- tb.Name := 'tb' + IntToStr(i);
- tb.OnChange := AdvChange;
- l := TLabel.Create(gbOther);
- l.Parent := gbOther;
- l.Left := 145;
- l.Height := 17;
- l.Top := 80 + i * 23;
- l.Caption := cap;
- end;
- gbOther.Height := 113 + Dev.DeviceLines.AdvancedCount * 23;
- btnClose.Top := gbOther.Top + gbOther.Height + 8;
- Height := gbOther.Top + gbOther.Height + 70;
- end;
- end;
- //---------------------------------------------------------------------------
- procedure TfrmAdv.FormCreate(Sender: TObject);
- begin
- Dev := frmDevices.Dev;
- end;
-
- end.
-